2.6.1 常量的定义 您所在的位置:网站首页 c++ 定义一个常量 2.6.1 常量的定义

2.6.1 常量的定义

2022-10-17 20:47| 来源: 网络整理| 查看: 265

在C++中,可以使用宏机制#define来定义常量,也可以使用const将变量定义为一个常量。#define定义的常量名称,编译器对其进行编译时,会将代码中的宏名称替换成对应信息。宏的使用可以增加代码的可读性。const是为了增加程序的健壮性而存在的。常用字符串处理函数strcpy的第二个参数被定义为一个常量,这是为了防止该参数在函数内被修改,对原字符串造成破坏,宏与const的使用如代码清单2-10所示。

代码清单2-10 宏与const的使用 // 定义NUMBER_ONE 为常量1 #define NUMBER_ONE 1 // 将常量NUMBER_ONE 赋值给const 常量nVar const int nVar = NUMBER_ONE; // 显示两者结果 printf("const = %d  #define = %d \r\n", nVar, NUMBER_ONE);

代码清单2-10中使用#define定义了常量1,并赋值给const常量nVar。编译后,宏名称NUMBER_ONE将被替换成1。使用MicrosoftVisualC++6.0编译此段代码,依次选择菜单Project→Settings→C/C++→ProjectOptions→添加/P选项,如图2-14所示。  

此编译选项的功能是将预处理文件生成到文件中,编译后,对应的CPP文件夹中会产生一个“文件名.i”的文件。编译代码清单2-10中的代码,生成.i文件,打开该文件查看main函数中的代码信息。添加“/P”选项后,在连接过程中会产生错误,这是由于没有生成OBJ文件,而是将预处理信息写入了.i文件中,编译器找到不OBJ,无法进行连接。查看.i文件中的信息,如代码清单2-11所示。

代码清单2-11 预处理文件信息 int main(int argc, char* argv[]) {       const int nVar = 1;  // 这里的宏NUMBER_ONE 都被替换为数字1       printf("const = %d   #define = %d \r\n", nVar, 1);       return 0; }



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有